Conventional computers generally execute one or more software programs, such as operating systems, productivity applications, educational applications, recreational applications, etc. Before such a software program can be executed by the computer, it typically must be installed on the computer, a process which usually involves copying one or more files from a distribution medium (e.g., a CD ROM) onto a storage device (e.g., a hard disk) of the computer, as well as possibly informing the operating system of the newly installed program.
A current trend in computer development and design is towards an increase in user-friendliness. Making software, and thus the computers that run the software, easier to use increases the number of people that will actually use the computers and software. Furthermore, by improving the user-friendliness of a computer or the installed software the overall user experience in using that computer or software can correspondingly be improved.
One way in which user-friendliness is improved, for both software and the computer as a whole, is allowing for user-customization of the software. For example, the user's name, street address, electronic mail address, display preferences, etc. can be provided to the software. This allows the software to address the user at a personal level (e.g., by name) and operate in a manner that is more to the user's liking.
Unfortunately, such user-customization typically must be performed manually by the user and typically must be repeated for multiple software programs. For example, the user must add his or her name to each of multiple programs, add his or her street address to each of multiple programs, add his or her email address to each of multiple programs, etc. This manual information entry, especially when repeated numerous times, becomes burdensome on the user and thus reduces the user-friendliness of the computer.
Furthermore, requiring manual entry of such user information reduces the “out of box” experience for the user. The “out of box” experience refers to the user's experience the first time he or she uses his or her new computer (i.e., when he or she takes the new computer out of its box, plugs it in, and turns it on). One solution to improve the “out of box” experience would be to have the user information immediately available to the user for this first use of the computer, such as by having a manufacturer add the user information for the user. Unfortunately, such manufacturer-entry of the user information is an expensive process and can be cost-prohibitive. Thus, it would be beneficial to improve the “out of box” experience for the user in a different manner.
The automatic program customization based on a user information store described below addresses these and other disadvantages.